<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>学生管理系统</title>
</head>
<body>

<script>
    let students = [
        {"s-name": "张三", age: 23, addr: "北京"},
        {"s-name": "李四", age: 24, addr: "上海"},
        {"s-name": "王五", age: 25, addr: "曹县"}
    ];

    function viewStudents() {
        console.log("=== 学生列表 ===");
        for (let stu of students) {
            console.log(`姓名：${stu["s-name"]}, 年龄：${stu.age}, 住址：${stu.addr}`);
        }
    }

    function add() {
        let name = prompt("请输入学生姓名：");
        let age = +prompt("请输入学生年龄：");
        let addr = prompt("请输入学生住址：");
        students.push({"s-name": name, age, addr});
        console.log("学生添加成功！");
    }

    function del() {
        let delName = prompt("请输入要删除的学生姓名：");
        for (let i = 0; i < students.length; i++) {
            if (students[i]["s-name"] === delName) {
                students.splice(i, 1);
                console.log(`已删除姓名为 ${delName} 的学生`);
                return;
            }
        }
        console.log("未找到该学生！");
    }

    function find() {
        let name = prompt("请输入要查找的学生姓名：");
        for (let stu of students) {
            if (stu["s-name"] === name) {
                console.log(`姓名：${stu["s-name"]}, 年龄：${stu.age}, 住址：${stu.addr}`);
                return;
            }
        }
        console.log("未找到该学生！");
    }

    function modify() {
        let name = prompt("请输入要查找的学生姓名：");
        for (let stu of students) {
            if (stu["s-name"] === name) {
                stu["s-name"] = prompt(`原姓名：${stu["s-name"]}, 修改后的姓名：`);
                stu.age = +prompt(`原年龄：${stu.age}, 修改后的年龄：`);
                stu.addr = prompt(`原住址：${stu.addr}, 修改后的住址：`);
                console.log("学生信息修改成功！");
                return;
            }
        }
        console.log("未找到该学生！");
    }

    do {
        let result = +prompt(`请选择功能：
                              1. 查看所有学生
                              2. 添加学生
                              3. 删除某个学生
                              4. 查找学生
                              5. 修改学生信息
                              0. 退出系统`);

        switch (result) {
            case 1:
                viewStudents();
                continue;
            case 2:
                add();
                continue;
            case 3:
                del();
                continue;
            case 4:
                find();
                continue;
            case 5:
                modify();
                continue;
            case 0:
                console.log("退出系统");
                alert("系统已退出");
                throw new Error("用户退出程序");
            default:
                console.log("无效输入，请重新选择");
        }
    } while (true);
</script>

</body>
</html>
